package com.aizuda.boot.modules.business.approval.service;

import com.aizuda.boot.modules.business.approval.entity.HandoverHistory;
import com.aizuda.boot.modules.business.approval.entity.dto.HandoverDTO;
import com.aizuda.boot.modules.business.approval.entity.dto.QueryHandoverDTO;
import com.aizuda.boot.modules.business.approval.entity.dto.QueryHandoverHistoryDTO;
import com.aizuda.boot.modules.business.approval.entity.vo.HandoverHistoryVO;
import com.aizuda.boot.modules.business.approval.entity.vo.HandoverQueryVO;
import com.aizuda.boot.modules.business.contract.dto.SingleResponse;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * @Author sangyirong
 * @ClassName HandoverService
 * @Version 1.0
 * @Date 2025/7/24 19:09
 */
public interface HandoverService extends IService<HandoverHistory> {

    /**
     * 获取交接历史
     * @param dto
     * @return
     */
    SingleResponse<IPage<HandoverHistoryVO>> history(QueryHandoverHistoryDTO dto);

    /**
     * 查询审批交接列表
     * @param dto
     * @return
     */
    SingleResponse<List<HandoverQueryVO>> query(QueryHandoverDTO dto);

    /**
     * 交接
     * @param dto
     * @return
     */
    SingleResponse handover(HandoverDTO dto);
}
